A feature of the Internet is the ability to transmit electronic data files from one computer to another using various types of file transfer protocols such as File Transfer Protocol (FTP) and Hypertext Transfer Protocol (HTTP). Data in this sense may include any form of information including, but not limited to, numbers, text and/or programming code. Accordingly, there are many different types of data files which may be transmitted on the Internet, e.g., image files, index files, computer operating system files, and data dictionaries. Currently, data files available to be downloaded from host computers are increasingly large in size resulting in increased overall download times. As a result, downloading large data files over the Internet, especially files over 300 MB in size, can be a time consuming process that often leads to problems occurring during the download process.
For example, a downloading process is occasionally interrupted due to a network connection failing or a power failure. Additionally, a file may be corrupted during a downloading process due to a hardware or software malfunction, rendering the downloaded file unreadable or otherwise unusable. Larger files require a longer time to download than smaller files, thus, there is a greater chance of the occurrence of some type of failure during the downloading of a larger file than that of a smaller file. Usually, a file being downloaded at the time of an interruption or equipment failure must be downloaded again in its entirety, even if most of the file had already been transferred at the time of the interruption or failure. Thus, successful downloading of a large file over the Internet often requires multiple attempts to complete the file transfer. Regardless of the type of failure, repetitive time-consuming downloads of the same file can be frustrating for a client-user as well as costly in terms of the server bandwidth utilized.